Method and apparatus for detection of light-modulated signals in a video stream

ABSTRACT

A method for detection of an emitter mobile device (B) equipped with a light by a receiver mobile device (A) equipped with a camera, comprising: the emitter mobile device (B) emits a light-modulated signal to advertise its identity or state; the receiver mobile device (A) captures a series of frames with said camera; the modulated signal is detected from said frames; the pixel position of the emitter mobile device on a within the camera frame of the receiver mobile device is detected.

RELATED APPLICATIONS

This application is a national phase of PCT/IB2017/056759, filed on Oct.31, 2017, which claims the benefit of Swiss Application No. 01456/16,filed on Oct. 31, 2016. The entire contents of these applications arehereby incorporated by reference.

FIELD OF THE INVENTION

The present invention concerns a method for the detection and/ortracking of a light-modulated signal in a video stream.

DESCRIPTION OF RELATED ART

Various methods based on computer vision for identifying and trackingobjects in consecutive frames of a video signal are known in the priorart. As an example, WO2009153557A1 relates to a method and system forenabling the tagging of items appearing in a moving or paused image byproviding an identification device within the item to be tagged;capturing moving image footage containing the image of this item;detecting the presence and the position of the identification meanswithin each frame of the moving image footage and hence determining theposition of the item in each frame of the moving image. By automaticallydetermining the position of the identification device, a suitable tagcan then be automatically associated with the item when saving ortransmitting the moving image. This method requires a specificidentification device.

JP2003348424 describes the use of IR lights for video tracking.

FR2911707 describes a method for evaluating the position and orientationof an object to be monitored in an image. However, the detection oforientation is only possible for relatively large objects; theorientation of small objects, such as single pixels, or circularobjects, is much more difficult or even impossible to determine.

US2015050994 describes a method based on a light signal forcommunication between mobile devices. The position of each pixel is notdetected.

None of those methods is suitable for identifying and locating firstmobile devices with second mobile devices, especially from a relativelylarge distance and when the first devices only appear as tiny objects orsingle pixels on the display of the second device.

According to another aspect, immersive computer games simulatingfirearms are already known in the prior art. As an example, US2007132785describes a game system comprising head-mounted display systems andpositional tracking equipment to create immersive augmented realitygames. The cost and weight of such an equipment are important.

US20150080071 describes a software application for portable computingdevices adapted to simulate a weapon combat. A camera is used to displayimages onto a display screen of the computing device. The image may bemodified based on a set of predefined criteria. The predefined criteriamay vary based on a virtual weapon being used, environmental conditions,and other factors. Responsive to user input, the current image iscaptured. The time of the image capture, the geographic location of theuser, and identification of the enemy depicted in the image aretransmitted along with the image to a centralized server. The time stampof each transmitted image is analysed to confirm that the user had notbeen eliminated prior to capturing the image. Explosives are simulatedby using the GPS to determine the location of the explosion and thedamage radius. In this system, the identification of the opponents shotis done manually; upon firing a series of shot, a user examines shotphotographs to visually confirm that a member of the opponent team hasbeen hit. This identification is tedious, and could only be done after adelay, so that a participant in a duel does not know immediately if hehas been hit.

US2016228770 describes a similar game based on geolocation.

US2017209789A describes a multi-user augmented reality laser game onmobile phones based on an external hardware equipped with a collimatedIR light (to aim at another of such device) and with an array of 6photodiodes to detect the incoming light beam of another of suchdevices.

In such a video game, it would be desirable to detect automatically ifan opponent is present on an image or video captured by the mobileequipment of a player.

In another field of use, geomatic applications often require adetermination of the positions of items, such as mobile devices, in ascene in order to evaluate dimensions or distances.

In yet another field of use, devices capable of autonomous navigationoften require determining the position, identity and/or intentions ofother devices of the same type, or to determine their positionrelatively to a frame of reference.

BRIEF SUMMARY OF THE INVENTION

Therefore, an aim of the present invention is to provide a method and adevice for the detection and identification of a first device [theemitter device or device B in this text] in an image frame captured witha camera of a second mobile device [called receiver device or device Ain this text] equipped with a camera.

According to one aspect, this aim is achieved by a method for detectionand identification of an emitting device equipped with a light by areceiving mobile device equipped with a camera, comprising:

the emitting device emits a light-modulated identification signal toadvertise its identity;

the receiving mobile device captures a series of frames with saidcamera;

the modulated signal is detected from said frames;

the pixel position of the emitting device within the camera frame of thesecond mobile device is detected.

The emitting device might be a mobile device.

According to another aspect, the invention is also related to a methodfor advertising the identity of an emitter device equipped with a light,comprising:

the emitter device emits a light-modulated identification signal toadvertise its identity.

According to another aspect, the invention is also related to a methodfor identifying an emitter device, comprising:

capturing an image with a receiver mobile device;

detecting a modulated light source in said image or in a region ofinterest of said image;

identifying said emitter device if the modulation corresponds to saidemitter mobile device.

Generally, the invention is related to a way for a device equipped witha camera to track the pixel position of another device (more preciselyof a light installed on it), which is achieved by having the detecteddevice emit a light signal (visible or invisible such as infrared) thatis known to the tracking device—or rather, a signal that belongs to aset of signals known by the tracking device.

The invention is also related to a method allowing to find a knownsignal (even the signal it is weak and buried in noise) by searchingthrough the intensity history for a number of previously acquired framesand doing so on all pixels of a region of interest.

In this invention, the primary goal of the light signal is not tocommunicate a stream of information. In this, it differs from visual orIR light communication (such as optical wireless communication or Li-Fi)using typically digital encoding, as per definition a signal used forcommunication cannot be known by the receiver (and the more informationis communicated through a signal, the harder it is to isolate the signalfrom the noise). However, some information may be conveyed by the factthat the device to be detected may choose to emit through one or anotherknown signal of a set, which allows a device to communicate a state thathas been associated to a specific signal.

There may be as many devices emitting each a different light signal asthere are signals in the set, and consequently, if the detecting deviceknows which emitting device is using which channel, the detection of asignal at a pixel position corresponds to the unambiguous detection of adevice at this pixel.

The invention is also related to the detection of a device at a pixelposition in combination with wireless communication, through which thedevices may exchange information efficiently and at high rate (includingthe pairing information of which device is using which signal).

Once a detected pixel is associated with a device, this pixel may be inturn associated by any information communicated with the detecteddevice.

Invisible light (such as infrared light) may be used to avoid thediscomfort of seeing blinking lights, faster detection may be achievedby using high-speed cameras, and even higher sensitivity by using amonochromatic light and camera.

A wavelength that is less affected by the absorption by atmosphericvapor (or fog), and/or that is less overlapping the spectrum of the sunmay be used (such as long wavelength infrared) in order to make theinvention more immune to atmospheric conditions and more adapted tooutdoor operation.

The invention is also related to the combination of detection—not onlywith wireless communication, but also with the geolocation capabilitiesof a device and the possibility access to a server. This enablesapplications in augmented reality such as a multi-user augmented realityaiming game.

On a smartphone or smartglasses, the light emitting the signal may bethe camera flash LED or a dedicated IR light.

In one embodiment, this invention is further related to a guidancesystem for self-navigating devices such as car or drones, which benefitfrom the ability to detect but also identify unambiguously another ofsuch devices.

In one embodiment, the method of the invention also enables a car toassociate unambiguously information received through wireless vehicularad-hoc networks (VANETs) to a specific car in the field of view of itscameras.

The device and method of the invention do not require a collimatedlight; instead, it may use an omnidirectional light which is commonlyavailable in many mobile devices.

According to one aspect, the receiver device that is aiming to track canadd an augmented reality mark at the position of the detected emitterdevice and distinguish between different emitters, such as differentopponents in a game. This is even possible before actual shooting, andeven if the receiver device aims somewhere else.

BRIEF DESCRIPTION OF THE DRAWINGS

The invention will be better understood with the aid of the descriptionof embodiments given by way of example and illustrated by the figures,in which:

FIG. 1 shows a schematic view of a system comprising one receiver mobiledevice A and three emitter devices B, according to an embodiment of theinvention.

FIG. 2 represents an image frame of the camera of a receiver mobiledevice A, displaying a plurality of emitter devices B.

FIG. 3 shows a schematic view of a system comprising four mobile devicesall acting as emitter and as receiver mobile devices (combined deviceAB).

FIG. 4 shows a possible implementation of a light-modulated signal andsignal recognition algorithm in the system of FIG. 1

FIG. 5 shows an example of a system according to an embodiment of theinvention, used for a geomatic application.

FIG. 6 shows an example of display view of the receiver mobile device Ain the embodiment of FIG. 5.

FIG. 7 shows two successive images on a display of a receiver mobiledevice, in an example of application for an augmented reality aiminggame.

FIG. 8 shows a schematic view of a session of four mobile devices(emitters/receivers combined devices AB) in an example of multiplayergame based on the principle described in FIG. 7 with wireless exchangeof information and access to a server or cloud C, and their displayviews.

FIG. 9A shows the display view of a combined mobile device AB in anexample of multiplayer game session based on the principle of FIG. 6with additional geolocation information shared between members of asession.

FIG. 9B shows a map view representing the position of various playerparticipating in a gaming session.

FIG. 10 shows an example of a game session based on the principledescribed in FIG. 7, in which each player is equipped with an emittermobile device B and a receiver mobile A device that are wirelesslyconnected to each other.

FIG. 11 shows a schematic view of an example of game session based onthe principle described in FIG. 8 with a wireless beacon defining a safezone.

FIG. 12 shows a process flowchart representing a cyclic detectionalgorithm, according to an embodiment of the invention.

FIG. 13 shows a process flowchart representing a cyclic detectionalgorithm based on DFT for the detection of a light-modulated signal (asrepresented in FIG. 4), according to an embodiment of the invention.

FIG. 14 shows a system flowchart of a session of receiver devices A andemitter devices B interacting with each other, according to anembodiment of the invention.

FIG. 15 shows a system flowchart of a session of combined devices AB (asrepresented in FIG. 3) interacting with each other, according to anembodiment of the invention.

FIG. 16 shows a system flowchart representing a session of combinedmobile devices AB equipped with a display and a geolocation system, andwith access to a server C hosting the session (as in the game sessionrepresented in FIG. 7), according to one embodiment of the invention.

FIG. 17 shows a system flowchart representing a session, in which eachuser is equipped with a receiver device A and an emitter device Bconnected wirelessly to each other (as in the game session representedin FIG. 8), according to one embodiment of the invention.

FIG. 18 shows a system flowchart representing a session of combinedmobile devices AB interacting with a wireless beacon W defining anactive zone (as in the game session represented in FIG. 9), according toone embodiment of the invention.

FIG. 19 shows a schematic view of an example of embodiments of acombined device AB as a smartphone equipped with a video camera, and acamera flash light;

FIG. 20 shows a schematic view of another example of embodiment of acombined device AB as smartglasses equipped with an IR camera as deviceA and an IR light as device B.

FIG. 21 shows a schematic view representing on the left: a frame ofreference formed by 3 devices B attached to a painting in the field ofview of the camera of a device A, and on the right: the display of thedevice A showing an augmented reality view of the painting.

FIG. 22 shows a schematic view representing on the left: a scenecontaining 3 devices B forming a frame of reference around a building inthe field of view of a device A, in the middle: a geometricalrepresentation of the localization of the device A relatively to thedevices B, viewed from above; and on the right: the display of thedevice A showing an augmented reality view of the scene.

DETAILED DESCRIPTION OF POSSIBLE EMBODIMENTS OF THE INVENTION

FIG. 1 illustrates a system comprising one receiver device A, such as areceiver mobile device, and three emitter devices B, such as emittermobile devices. The number of emitter devices B in the system may be anynumber equal or greater than 1; similarly, the number of receiver mobiledevices A may be any number equal or greater than 1. The informationinterchanged during a dialogue between a set of devices A and Binteracting in such a system and represented by arrows on the figureform what is defined as a session.

The receiver device (receiver A) is an electronic device equipped with acamera, it is typically portable and may be for example a smartphone, atablet computer, a camera, a smartwatch, a video camera, an IR camera, aUV camera, a wearable device, a headset, a helmet, goggles, smartglasses(such as electronic glasses, a virtual/augmented/mixed reality headset,a head-mounted display or a virtual retinal display system), a robot, adrone, a car, etc. Its position might be mobile, although for someapplications the receiver device might be fixed, or fixed during thedetection.

Its camera may be sensitive to visible and/or non-visible light (such asIR or UV), and can detect a light-modulated signal emitted by an emittermobile devices B within its angle of view. It may be equipped with amore than one camera in order to cover a wider angle (in this textreference to a camera may represent a group of cameras).

The emitter device B is an electronic device equipped with a light thatis typically omnidirectional. It is typically portable and may be forexample a smartphone, a tablet computer, a camera, a smartwatch, a videocamera, a wearable device, a headset, goggles, electronic glasses,smartglasses, a lamp, a light, a flash, a helmet, a hat, a piece ofcloth, a target, a robot, a drone, a car, a beacon attached to anobject, etc. Its position might be mobile, although for someapplications the emitter device might be fixed, or fixed during theemission.

In the case of a smartphone, the light may be for instance the LED flashof the camera.

FIG. 1 shows a plurality of emitter devices B1, B2, B3. Each emitterdevice B is equipped with a light of which the emission spectrum may bewithin or outside of the visible range (for instance, UV or IR). Anemitter device B can comprise a plurality of components, such as forexample a hat equipped with a light and a smartphone wirelesslyconnected with the hat. It may be equipped with a more than one light inorder to cover a wider angle or improve the omnidirectionallity (in thistext reference to a light may represent a group of lights).

The spectrum of the light of emitter device B must overlap the spectralsensitivity range of the camera of receiver device A. The camera ofreceiver device A may be monochromatic or equipped with a bandpassoptical filter matched to the spectrum of the light emitted by thedevice B (which may increase detection sensitivity by decreasing thenoise coming from the rest of the spectrum). The light of emitter deviceB may be monochromatic, for instance using a LED or by equipping it witha bandpass optical filter. The light of emitter device B may be in thevisible spectrum or in the infrared spectrum. The light may be emittedfrom the backside of a smartphone, and captured by a camera in thebackside of another smartphone.

Each or some of the receiver devices A and each or some of the emitterdevices B may be equipped with a processor and/or with a display. It maybe equipped with a geolocation system, and/or wireless datacommunications systems that allow it to communicate wirelessly withother devices in the system and/or with a server or cloud (C in thistext). A device that may act as an emitter and a receiver is defined asa combined device or device AB in this text.

Each emitter mobile device B emits a light-modulated signal that createsa channel S. The signal is chosen among a set of signals that can bereliably and specifically detected by the device A. The set of signalsmay be a finite set.

The channel may be defined by simple square signal at a specificfrequency (which correspond to the blinking of the light at a givenfrequency) or a sinusoid. If the devices share a time base (for instancethey may communicate a clock signal with each other wirelessly, or theymay use timestamps obtained from a GPS signal or from a cellularnetwork), the phase information may also be used to define the channelin addition to the frequency, and the signal may be controlled via aphase-locked loop. Other modulations may be used, including frequencymodulation, phase modulation, amplitude modulation, and discrete oranalogic modulation schemes. Using more elaborate modulations allows ahigher number of channels available, more reliable detection of eachchannel, and hence for example a more reliable identification of eachemitter device it is paired to, especially in difficult lightconditions.

Different kind of transforms or functions may be used for detectingblinking portions in a captured image and associating them with aspecific channel. For instance, the algorithm may be based on thediscrete Fourier transform or the autocorrelation function. It may alsobe based on phase-sensitive detection (or digital lock-inamplification). Alternatively, the algorithm might be based on acorrelation between each signal which is searched and the detectedvariation of intensity signals at each pixel, or at each pixel orportion of a region of interest. The correlation between the searchedsignal end the signal detected at a particular position also gives aconfidence value for the detection.

In order for a receiver mobile device A to proceed to the identificationof an emitter mobile device B, each emitter device B uses preferably adifferent channel, so the receiver device A may specifically identifyeach of them. In order to proceed to the device identification, thedevice A must know which channel S is attributed to which devices B.This is what will be defined as channel-device pairing.

This pairing may be set before the session starts, or be communicated tothe receiver devices A before, during or after the detection process. Inone embodiment, an emitter device B may communicate itself which channelit is paired with to a receiver device A, for instance wirelessly. Inanother embodiment, an instance (with computing power and that is ableto communicate data with the devices A or B) defined as the session hostmay attribute a channel to each device B and communicate channel-devicepairing to each device A, for instance wirelessly. One of the mobiledevice A, or B, or an external instance (such as a server or cloud C)may be used as this session host.

Wireless communication may be achieved via wireless personal areanetwork (WPAN, such as Bluetooth), wireless local area network (WLANsuch as Wi-Fi), peer-to-peer Wi-Fi, mobile/vehicular/smartphones ad hocnetworks (MANET/VANET/SPAN), wireless mobile telecommunicationstechnology (from instance through cellular network such as GSM or UMTS),and/or through a computer information network (C/N such as theInternet), etc.

Several emitter devices may use the same channel and still be identifiedif it is possible for the receiver mobile device A to distinguish themwith other elements, for example based on the time of emission, on thelocation of the emitter device, and/or on the color (or wavelength) ofthe emitted light.

The information that may be associated with a channel is not limited tothe identity of the device A. For instance, a channel (such as ablinking frequency, or another signal) may represent the state of adevice B (in this case, there would be as many states possible as thereare channels available). In this situation, more than one device B mayadvertise the same state in the same time, and each device B may changestate over time. As described previously for identity, the channel-statepairing may be set before the session starts, or be set and communicatedby the session host.

In addition to the modulation of the light signal, additionalinformation may be used for distinguishing between mobile devicesidentified in an image, for instance if some of them use the samechannel. For example, the aiming direction of the receiver device may beknown, for example based on a magnetometer, inclinometer, accelerometeretc. If the geolocation of each device is also known, for example basedon a global navigation Satellite system (GNSS, such as GPS, GLONASS,etc), an indoor positionning system (IPS, such as Wi-Fi positioningsystem), by triangulation based on a GSM or other wireless signal,and/or based on an inertial measurement unit (IMU), the aiming directionor the receiver device and the location of each emitter and receiverdevice may be used for disambiguating between two emitter devices, forexample if they are using the same channel, and/or for limiting thesearch for emitter devices to areas in which they are more likely to befound. The devices may communicate their location information to eachother wirelessly (directly or through a server or cloud C).

The light modulation may be used to carry additional information, forinstance as a signal added to, multiplied to, convoluted to and/oralternating with the light-modulated signal defining the channel.

Let's consider an emitter mobile device B in the angle of view of thecamera of a receiver mobile device A and which uses a channel S. Thevideo stream captured by the camera of the receiver device A thuscomprises blinking pixels at the position corresponding to the emitterdevices B in one image, or in a plurality of image frames of a videostream. A processor in the receiver mobile device A, or in a server orcloud C accessible by this device, performs a signal recognitionalgorithm to find the pixel (or pixels) (X_(S),Y_(S)) corresponding to achannel S with highest probability, for each channel among the set (or asubset) of all available channels. The processor might also determine aparameter representing the detection confidence d_(s). This recognitionand/or determination may be performed in real time or in postprocessing,continuously or on-demand. The output values of the algorithm are hencethe pixel (or pixels) position (X_(S),Y_(S)), the optional detectionconfidence d_(s) and any other information that may be relevant. In theembodiment in which the device B is paired with the channel S, thedevice B is detected at position (X_(S),Y_(S)) with confidence d_(s).Such a process running continuously in real-time allows for real-timetracking of device B within the camera frame of device A.

In one embodiment, the detection of blinking pixels is only performed ona subportion of the display defined as the region of interest (ROI), forexample on a rectangular or quasi-circular portion of interest selectedor targeted by the user of the receiver mobile device A. The region ofinterest can extend to the full frame. In one embodiment, a device isequipped with a touch sensitive display and the ROI may be defined byuser action on said display.

In another embodiment, the display is divided into an array ofsubportions and the signal recognition algorithm is run parallelly onall (or a subset of, such as a user selected subset of) the subportions,for instance by running all or part of the algorithm on the mainprocessor or preferably on a graphics processor unit (GPU).

An embodiment of a session of various emitter mobile devices B andreceiver mobile devices A is represented in the system flowchart of FIG.14. The figure shows two receiving devices A1 and A2, and three emittingdevices B1, B2 and B3. Each receiving device A1, A2 comprises onesoftware module 140 for channel device pairing, executed by a processoror graphic processor 141, and a camera 142. It delivers an outputinformation 143 in the form of a position X,Y of each detected device ineach frame. A global data communication module 144, such as a cellularpart, might be provided to exchange data.

Each emitting device B1, B2, B3 comprises a light emitter 148, such as aLED, for emitting light in a channel S1, S2 resp S3 corresponding to thedevice. The different channels might be modulated differently so thatthe receiving devices A1, A2 can distinguish them; for example, thelight might be pulsed with different frequencies, phases and/or dutycycles depending on the channel. The lights are controlled by a controlelectronic circuit 149, depending on a channel selection stored in amemory 151 or channel selector 150. A processor 152 might be provided inat least some of the emitting devices. The emitting devices might have aglobal data communication module 144 that can be used to get theinformation about which channel to use from the session host (forinstance the server).

A server or cloud S may control the system. It comprises a global datacommunication module 144, a processor 147, a data storage 146 and mayperform the task of hosting the session (145).

In one embodiment of a signal recognition algorithm, every N frame, theprocessor 141 in the receiver device A, and/or a processor 147 in aserver or cloud C accessible by the receiver mobile device A, cyclicallyperforms a signal recognition algorithm on the intensity for the last Nframes for all pixels within a region of interest, in order to determinethe pixel (or pixels) (X_(S), Y_(S)) corresponding to strongest signalfor channel S and a detection confidence parameter d_(s). Such adetection process is represented in the process flowchart of FIG. 12

The process starts at step 120 with the acquisition of a video by acamera 142 of one receiving device A. A matrix is initialized to storevideo data, i.e., a series of frames.

At step 121, a counter is initialized.

At step 122, one video frame is grabbed from the video stream that wascaptured.

At step 123, this frame is pre-processed, for example in order to adaptits brightness or contrast, convert it from color to grayscale, cropand/or rescale it. Frame data is added to the matrix.

A check is performed at step 125 for the value in the counter. If thevalue is lower than the required number of frames N, the counter isincremented and the method returns to step 122. Otherwise, the processgoes to step 126 where a signal recognition algorithm is performed onthe matrix.

At step 127, the signal recognition algorithm outputs the pixel (orpixels) position (X_(s), Y_(s)) where the channel S was recognised inthe retrieved frames, as well as a detection confidence parameter d_(s)(step 128) for each detected pixel position, that may for instancedepend on the contrast between those pixels and neighbour pixels in thescene. The process is repeated for each channel S (step 129).

At step 130, the following channel detection information is output foreach channel found in the frames: Pixel (or pixels) position (X_(s),Y_(s)) where channel S was recognised, and detection confidence d_(s).

At step 131, a pairing between the found channels (found blinkingfrequencies) and emitting devices B is performed, based on previouslyknown data or data communicated by the session host.

At step 132, the following information is determined for each foundemitting device: most probable pixel (or pixels) position (X_(S),Y_(S)), and the corresponding detection confidence d_(s). Thisinformation is updated at each cycle of N frames, allowing the device Ato track each device B having its light in the field of view of thecamera.

At step 133, a postprocessing of the channel detection might beperformed, for example in order to generate an augmented reality view.

FIG. 2 represents one frame acquired by the camera of the receivermobile A having three emitter mobile devices B1, B2 and B3 in its fieldof view. Each emitter device uses respectively a channel S1, S2, S3(they emit a light-modulated signal with a specific modulation). Theposition of an emitting device Bi in the frame is represented withcoordinates X_(Bi), Y_(Bi).

As illustrated on FIG. 3, a combined mobile device AB may be equippedsimultaneously with a camera 142 and with a light 148 and actsimultaneously, or at different times, as emitter and receiver deviceAB. FIG. 3 represents three of such devices. Such kind of devices maydetect other emitter devices B or combined devices AB, and may bedetected by other receiver devices A or combined devices AB. The systemis thus reciprocal for combined devices AB. In one embodiment, only someof the mobile devices are combined devices AB equipped with both cameraand light, others are receiver devices A equipped with a camera only oremitter mobiles B that just emit a light and serve as passive targets orbeacons. An embodiment of a session of combined devices AB isrepresented in the system flowchart of FIG. 15.

FIG. 4 illustrates a possible implementation of a light-modulated signaland signal recognition algorithm. Each emitter mobile device B1, B2, B3blinks at a specific frequency f_(Bi). The receiver mobile device A usesa discrete Fourier algorithm, or another transform or function, todetect blinking pixels or regions in successive frames acquired at aconstant frame rate, and to identify the corresponding emitting device.The frequency may be for example comprised between 1 and 1000 Hz, inrelation to the number of frames acquired per cycle and the frame rate.

In this example, the emitted light-modulated signal used as a channel Sis a square signal at a specific frequency f_(S) for each mobile deviceB. The recognition algorithm in the reciever mobile device or in aremote server or cloud is based in this example on a Discrete FourierTransform (DFT) on pixel intensity for the last N frames, on all pixels.The number N may be for example comprised between 16 and 256, forexample 32 or 64, and the frequency f_(S) a multiple of the ratio of theframe rate to N. Each pixel or group of pixels emitting at a givenfrequency generates a peak in the absolute value of the discrete Fouriertransform (DFT) for this specific frequency. The algorithm searches forthe pixel (X_(S),Y_(S)) having the highest probability of presence of alight-modulated signal corresponding to the channel S, i.e. highestabsolute value of DFT frequency corresponding to a searched channel.This might be for example the pixel emitting a light-modulated signalwith the highest brightness value, or maximum brightness value in awavelength range. If for instance the number N is set to 32 and thecamera acquires 60 frames per seconds, the duration of a detection cycleis circa half a second. Using a high-speed camera acquiring at 1000frames per second, the duration of a detection cycle is reduced to 32milliseconds.

In this example, the detection confidence d_(s) takes the value 1 if theabsolute value of the DFT at pixel (Xs, Ys) is higher than a predefined(or adaptative) detection threshold, else it takes the value 0 (in thisexample d_(S) is a Boolean value; confidence level with more than twodifferent possible values might also be used). Similarly, this searchmay be done for other channels according to their frequency.

If the channel-device pairing is known, each channel can be related tothe device it is attributed to.

The detection algorithm of this example is represented in the processflowchart of FIG. 13. Steps that are identical to those of FIG. 12 areindicated with the same reference number and won't be described again.At step 126′, a discrete Fourier Transform (or another transform) isperformed on the intensity for the N frames and for each pixel. At step127′, the pixels (Xs,Ys) with the maximal DFT value for each usedfrequency f (corresponding to a channel S) is found. A confidence leveld_(s) is then determined at step 128′. In this example, the confidencevalue d_(s) is set at 1 if the maximal DFT value is above a predefinedand adaptative threshold, otherwise this value ds is 0.

The detection is most likely to be successful, if the light-modulatedsignal of device B remain aligned with pixel (X_(S),Y_(S)) for the wholeduration of the detection cycle. The duration of the detection cycle maybe decreased by increasing the number of frames per seconds acquired bythe camera.

The value of the threshold may be adapted to the lighting conditions,and the adaptation may be done in real-time.

The detection process of a receiver mobile device A thus generates thepixel(s) position(s) (X_(S),Y_(S)) which is most likely to correspond toa channel S as well as, preferably, a detection confidence d_(S).

This information is available for postprocessing (step 133), forinstance by the receiver mobile device A itself or a server or cloud Caccessible by it, for instance to generate an augmented reality view ofthe scene. A mark (or an avatar, icon, . . . ) may be added to the scenefor each detected position of channel S, and may be refreshed inreal-time, continuously or on-demand (depending on the detectionalgorithm). The mark may represent a device B paired to the channel S,the user or owner of the device B, or the state paired to the channel S,or any property that may be associated with them in the context of anapplication software or a game. The augmented reality view may be forinstance shown on a display, typically on emitter mobile device Aitself. The video stream used for this augmented reality view is notnecessarily coming from the camera, or the one used for the detection.The emission and detection of light modulated signal may occur in theinvisible spectrum (for instance using IR light and an IR camera), andthe video stream shown on screen (on which the augmented realityelements are added) may come from another video camera equipping thedevice A that is sensitive to visible light.

As illustrated on FIG. 19, a combined AB device may be a smartphone thatis equipped with a video camera 1, a light source (camera flash LED) 2,a camera 3 sensitive to IR light at the wavelength of the IR lightsource (such as an IR camera or a video camera without IR cutoff filtersensitive to IR light), and an IR light source 4. In this embodiment,the IR-sensitive camera is used for the detection of the pixel positionof others AB (or B) devices in the field of view and the IR light sourcemay be used for the emission of the modulated light signal (using achannel S). The video stream from the video camera can be shown onscreen with augmented reality elements displayed where others AB (B)devices are detected. The use of a channel in the invisible IR lightprevents the users to be disturbed by the blinking light.

Alternatively, as shown on FIG. 20, a combined AB device may besmartglasses equipped with an IR-sensitive camera 5, an IR light source6, and a semi-transparent display 7 or a virtual retinal display 8projecting light directly onto the user's retina 9. Augmented realityelements can be added on the user's field of view, for instance arounddetected devices B or AB.

The server or cloud C represents an external instance with computingpower and data storage, that may be accessible by some or all of theemitter devices A, receiver devices B or combined devices AB in asession, for instance wirelessly. As described previously, it may act asthe session host, perform part or all of the detection algorithm, and/ormay collect geolocation data as well as other information from connecteddevices A, B and AB. If the server C is connected to a CIN (such as theInternet), it may collect information from other sources connected tothe network, for instance a map server. It may perform computation taskbased on all the collected information, and send back information(including settings or tasks) to all connected devices of the session,for instance a map with updated location of the other connected devices.Connected receiver devices A, emitter devices B or combined devices ABmay further process this information, for instance within the executionof a computer program, for instance in a game using the updated map.

FIG. 21 shows an application of the invention in which a referencedevice is made of a set of emitter devices B emitting on differentchannels (typically based on invisible light such as IR). The detectedpixel position of the devices B by a receiver device A may form a frameof reference, according to which the device A may project an augmentedreality element with contextual position, scaling and orientation on itsscreen (provided that the geometry of the reference device is known bydevice A). For instance, the reference device may be fixed to an objector in scene at specific location (such as an object in a museum, anhistorical site, or in the context of a geolocation-based game), andaugmented reality content linked to it may be shown on receiver devicesA.

In the case of a 2D-scene (such as a painting), the reference device mayconsist of 3 devices B, for example disposed in an L-shape. More thanone of such reference devices may be used on the same site, as each ofthem may be specifically identified through the channels it is using (itis sufficient that the device B forming the origin of the referencedevice uses a channel paired to an identity or state). Therefore,specific augmented reality content may be generated for each of them(for instance for various objects in an exposition). This concept may begeneralized for a 3D scene by adding a fourth device B (that is notcoplanar to the others). Furthermore, the frame of reference may bepartially determined using an inertial measurement system (for instancethe magnetometer, and/or the accelerometer to detect the direction ofgravity). Other visual elements of the scene can also be used, forexample known elements, or the horizon.

FIG. 22 shows another application of the invention in which the locationof a receiver device A may be detected relatively to a reference deviceconsisting of a set of emitter devices B forming a frame of referenceand that are installed at fixed positions (known to device A). Forinstance, in a 2D-situation where the device A and the devices B arecoplanar (for instance if they are all at the same altitude), it ispossible to compute the position of the device A using a frame ofreference formed by 3 devices B. The position may be derived from theangular distances between devices B as seen by A (angular distances maybe derived from the detected pixel position of the devices B, uponcalibration of the camera). Once the position of device A is determined,and using the devices B as reference, it is possible to generate a viewof a 3D augmented reality object seen from an angle that is contextualto the scene. This concept may be generalized for a 3D-situation byadding a 4th device B (that is not coplanar to the others). Furthermore,the frame of reference may be partially determined using inertialmeasurement system (for instance the magnetometer, and/or theaccelerometer to detect the direction of gravity).

If the position of the emitter devices B is not known by the receiverdevice A, the frame of reference can still be used to determine theposition of A relative to this frame.

In another application of the invention, the receiver device A may be adevice capable of autonomous navigation (such as a drone or a car orequipment for a car), and a reference device made of a series of emitterdevices B as light beacons may be installed for instance at a base (orhoming/docking station). When the reference device is in the field ofview of the camera of device A, the device A may calculate his ownposition relatively to the reference device in real-time (as describedpreviously) and navigate to the base (or homing/docking station) or toany another position determined relatively to said reference.

Drones or cars might also have a light and/or a camera, and act asemitter end receiver mobile device. The method of the invention can thenbe used by each drone or car for detecting the presence and position ofother drones or cars, and/or of fixed emitter devices, in order to avoidcollisions or to detect their absolute or relative position.

In another application of the invention, a combined device AB may beequipped with a set of devices B forming a reference device, so thatanother combined device of the same type may be able to compute its ownposition relatively to the other AB device and/or the position of theother AB device relatively to itself. This principle may be extended toany AB devices mentioned previously in this text. For instance, such anAB device may be a device capable of autonomous navigation (such as adrone or a car). It may be able to detect the position of other ABdevices of the same type in real-time and avoid colliding into them.

More generally, navigation may occur in a safer and more efficient wayif an emitter/receiver mobile device AB capable of autonomous navigation(such as a drone or a car) uses a channel paired to a state representingits directional intention (such as whether it plans to keep goingstraight, left, right, decelerate, or is in an emergency situation,etc.), and with this system the information is always unambiguouslylinked to a specific detected object (they may also communicate thisinformation wirelessly if the channel they use is paired with theiridentity instead of a state, for instance through a vehicular ad hocnetwork).

FIG. 5 shows another application of the present invention, for ageomatic solution. FIG. 6 shows a corresponding view on the display ofthe receiver mobile device A. In this embodiment, each of the mobiledevices AB1, AB2 and AB3 are equipped with a camera, a light and cancommunicate wirelessly with the other devices. They are installed atvarious positions of a building site. The angle separating the two otherdevices can be computed using the horizontal angle of view of the cameraand the pixel distance between them (normalized by the image width).This angle can be communicated to the other mobile devices via wirelesscommunication. A calibration function taking optical aberrations intoaccount can be used for more precision. With those three angle values,and since the distance d_(ref) between the emitter and receiver mobiledevices AB1, AB2 is known, the distance between the mobile devices AB1and AB3 can be computed.

Another application of the invention may be in the context of a poll tothe audience in a conference or auditorium. A presenter may ask theopinion of the audience on a certain matter, and the audience may chooseamong a set of possible answer. Each attendee may be equipped with anemitter device B, and each possible answer may be paired with a channelS (there may be as many possible answer as channel S). The presenter maybe equipped with a device A. An augmented reality view may superpose amark of a specific color for each answer on each detected device B inthe audience, so that the presenter may see what a specific person hasvoted.

Another application of the invention may be the search for a lost personin a crowd, that may use a device B to advertise its identity andposition. Another person looking for this person may use a device A tofind it in the crowd by detecting the channel S it is paired to. Otherapplications of the invention may be implemented using the invention,for instance in the form of an application software running on a deviceA, B or AB.

FIG. 7 illustrates screen views that may be presented to players of anaugmented reality aiming game based on the invention (for instance afirst-person shooter game or a lasergame). The texts on those figuresmight be adapted to the language of the player.

On the figure, a player using the receiver device A intends to aim atemitter devices B and hit by touching the corresponding button on thetouch surface of the display. The players' mobile devices may beequipped with camera and light and act as combined devices AB, in orderto detect other players and be detected by them, as previouslydescribed. The combined devices may be a smartphone or a tablet forinstance.

To aim at a player using the emitter device B, the player using thedevice A tilts and rotates this device to align player B light in thecenter of a crosshair zone displayed as an augmented element onto animage of the scene captured with his camera. The left part of FIG. 7 isa screen view of the receiver mobile device A during this process.

As shown on the right part of FIG. 7, once the aiming is good, playerusing A presses a virtual trigger button on his display or uses anotheruser interface element as a trigger. A computer program is then executedby a processor in his device A, or remotely by the server C, in order toperform signal recognition algorithm (for instance based on DFT) inreal-time and continuously onto all the pixels of the ROI defined by thetarget area, or in a rectangular or circular region around the targetdirection.

If an emitter device B paired with the channel S is detected within thisregion, the emitter device is considered to be hit. As the pixelposition (X_(S), Y_(S)) of the targeted device B is known, it ispossible to attribute game points according to the accuracy of theaiming (for instance whether (X_(S), Y_(S)) is in a 0, 5 or 10-pointszone).

If the hit is successful, the user of emitter device B may be informedvia wireless communication (directly or through the server C), and theplayer may receive visual and/or audio feedback, and lose life points.The user of mobile device A may also receive a visual and/or audiofeedback that his hit was successful.

FIG. 8 represents schematically a session of four combined devices ABparticipating to an augmented reality aiming game, as describedpreviously. The views show the information displayed on the display offour players AB1, AB2, AB3 and AB4. Those devices are connectedwirelessly to each other, and to a server or cloud C. Player profilesmay be created, that include player name, photograph of the player forvarious health conditions, recorded voice messages, or otheruser-specific information. The profiles may be setup before the gameinitialization and stored on the server C. Similarly, the players may beassociated in teams and team profiles may be implemented. The server Cmay act as the session host (attributes a specific channel S to eachdevice AB and inform all devices of the channel-device pairing), hold aregister of the life points of each device, share player and teamprofiles with all devices and supervises communication from and to alldevices. The player profile data may be used to show a specific personalavatar corresponding to each detected player in the Augmented Realityview displayed on each player device AB.

In order to initialize a game session, the welcome screen on each playerdevice AB may propose to either “create a session” or “join a session”.If “create a session” is selected, the server C may generate and send aunique barcode (such as a QR code) for display. Other players wanting tojoin the session may select the corresponding button, and the camera maybe used to scan the barcode, allowing the server C to add them to thesession. From here, the server may host the session by attributing aspecific channel to the mobile device AB of each player (for example aspecific blinking frequency or modulation scheme). Other methods ofdistributing channels to each device may be used.

Various augmented reality views may be implemented, such as zoom, nightvision, etc. Other object relevant to the gaming may be added to theview (such as weapons). All sensors equipping the player's mobile devicemay be used to input given controls in the game. For instance, anaccelerometer may be used to sense user movement that may be relevant tothe game, such as quickly squatting to grab something on the floor.

FIGS. 9A and 9B show one embodiment of a game session in which at leastsome of the mobile devices participating to the session are equippedwith a geolocation system (for instance based on a satellite navigationsystem, magnetometer, inertial measurement system, and/or an indoorposition system). Those devices may share their geolocation to alldevices participating to the session (for instance directly or throughthe server C). Each mobile device may then generate a geographicalrepresentation of the session with the location of each player, forinstance as an augmented reality view (such as a “radar” view where eachother player is represented by a dot on a circle, as represented on FIG.9A. Using map data obtained by a map server accessible by the devices(for instance the server C), a map view where the location of eachplayer is indicated, as represented on the map of FIG. 9B. A button orother user interface element on the touch surface may be used to switchbetween augmented reality view and map view.

A geographical zone Z may be defined as an active zone (for instance bythe session host) with specific properties within the zone affecting theplayer going there (it may be for instance a safe zone, a forbiddenzone, etc.).

Geolocation data may also be used before initiating the session. Theserver or cloud C may use geolocation data to provide a map of nearbyplayers or team available for a game. The player or his team maychallenge nearby player or teams and propose to meet at a definitegeographical location for a game, for instance through a text messageinterface communicating via the server C. After meeting in the place,the players may initialize a game session. More advanced game schemesmay be implemented such as tournaments at local or city scale, andsupervised at the server level.

FIG. 10 shows another embodiment of a game session, in which the twoplayers are equipped with a receiver mobile device A with a display, andwith another emitter mobile device B connected wirelessly to device A.The device B may be for instance a hat equipped with a series of lightscovering all directions (such as LEDs). In the context of an aiminggame, this would allow to aim at the head of a person from anydirection. Light of which the spectrum is non-visible for the human eyebut visible for the camera on receiver device A may be used, to preventthe players and passer-by to be disturbed by the visible blinking light.

An electronic device W (such as a router, a computer, a smartphone, atv, a watch, or any connected object) equipped with a wirelesscommunication system (typically WPAN as Bluetooth or WLAN), may serve asa wireless beacon for emitter (B), receiver (A) or combined devices(AB). The device W (as well as A, B, and AB devices) may be identifiedthrough a specific identifying signal broadcasted such as device ornetwork name, the use of a universally unique identifier (UUID), itsmedia access control (MAC) address, etc. A zone may be defined accordingto the wireless signal strength of device W, and the presence of thedevice within or outside of the zone may be defined as whether thereceived signal strength indication (RSSI) is above or below apredefined threshold (or whether the connection with device W issuccessful or not). A boolean parameter Z_(A), Z_(B), Z_(AB) mayrepresent the presence of device A, B, AB within the zone (it takes thevalue 0 if the device is outside the zone and 1 if it is inside). Theevaluation of Z may be performed in real time, continuously or on-demandby each device A, B, AB or by the device W. The value of the parameter Zmay be used as a selector within the execution of a computer program,for instance it may determine whether the device is within an activezone with property set in the context of an application software or agame (for instance a safe zone, in the case of a game). It may becommunicated to the server or cloud C for postprocessing and/or sharingwith the other connected devices. The session host, for instance theserver or cloud C, may attribute which property is linked with activezone around W.

FIG. 11 represents an embodiment of an aiming game session in which awireless beacon W is used to define a “safe zone” (that may be a zone inwhich a player cannot lose life point) within the game.

The position of each device as determined with a beacon or with ageolocation system may also be used for limiting the search for devicesto specific signals, to specific portions of the display and/or tospecific period of times. It is for example useless to search for aspecific channel in a frame if the emitter device associated with thischannel is outside of reach of a receiver device.

FIG. 14 and following are bloc schemas representing various possibleembodiments of a session in a system. Each device comprises severalmodules with dedicated functions. Arrows represent information flowbetween those modules. It is to be understood that in all the systemspresented in this document, each device or modules represented may beoptional, the list of devices and modules represented may not beexhaustive, each device or module may exist in multiple instances, eachdevice or module may assume the function of several devices or modulesas represented here, and that the concept of module represents a set offunctionalities and not a specific hardware. A description of thefunction and implementation of some of the devices modules follows forclarification.

FIG. 14 represents a session with different implementation of receiverdevices A and emitter device B. In emitter devices B, the controlelectronics 149 generates the signal emitted by the light. They might beequipped with an input device to determine the specific signalidentifying the device or it may be hardwired in the electronics. In anembodiment (B1), the input device may be for instance a manual channelselector 150 for setting the frequency of a square signal in a simpleelectronic circuit to control the blinking of a light. In anotherembodiment (B2), the channel to used may be recorded in a memory (151).In another embodiment (B3), the input device may be a wireless module(144), through which the session host (145, for instance the cloud C)may communicate which channel S should be used. In receiver devices A,the camera 142 sends a video streams stream to the processor 141. In oneembodiment, the processor of device A runs the detection algorithm (A1).In another embodiment, the server or cloud C may run the detectionalgorithm based on the data sent wirelessly by the device A (A2). Thechannel-device pairing information used by modules 140 may be setbeforehand: a channel (S2) may be reserved to a device B (B2), or setbefore the session starts (S1 selected on B1), or the session host maycommunicate which channel is attributed to which device (B3 is set touse S3). This pairing information may also be updated over time.

A channel may be paired with a state that may be advertised by a device.Different devices may advertise the same state at the same time or atdifferent time. Each device may change the advertised state or thechannel of emission over time.

A processor 141 represents a device that may perform computation tasks,for instance based on a CPU and/or GPU and/or a microcontroller. Itexecutes programs (software modules) stored in a memory (not shown) inorder to carry out the method steps of the invention. In a smartphone,the processor might execute an operating system, such as iOS or Android,and applications. One of the applications might be used for performingthe or some of the method steps described in the application.

A global data communication module 144 represents a system to exchangeinformation with other mobile devices, a server or a cloud through acomputer information network (CIN, such as the internet), for instancevia WLAN (such as wi-fi), wireless mobile telecommunications technology,etc.

FIG. 15 represents a session of combined mobile devices that maycommunicate wirelessly to each other (for instance to communicate to theother devices their name and which channel they are paired to).

A local wireless communication module 153 represents a system toexchange information wirelessly to nearby devices, for instance viawireless personal area network (WPAN, such as Bluetooth), wireless localarea network (WLAN such as Wi-Fi), peer-to-peer Wi-Fi,mobile/vehicular/smartphones ad hoc networks (MANET/VANET/SPAN),wireless mobile telecommunications technology (from instance throughcellular network such as GSM or UMTS), and/or through a computerinformation network (C/N such as the Internet), etc.

FIG. 16 represents a session of combined devices AB1, AB2 that maycommunicate wirelessly to a server C hosting the session (module 145represents the task of hosting the session). Each device is equippedwith a geolocation system 155 and a display 154 that may show anaugmented reality view, as in the game example shown in FIGS. 9A and 9B.The server C may have access to other servers 156, for instance a mapserver.

A geolocation system 155 represents a system to determine thegeolocation of the device, for example based on a Satellite navigationsystem (such as GPS, GLONASS, etc), an indoor positioning system (IPS,such as Wi-Fi positioning system), by triangulation based on a GSM orother wireless signal, and/or based on an inertial measurement unit(magnetometer, accelerometer and/or gyroscope).

FIG. 17 represents a session in which each user 1, 2 has a receiverdevice A and an emitter device B connected wirelessly to each other (asin the example shown in FIG. 10).

FIG. 18 represents a session of combined devices AB1, AB2 in thepresence of a wireless beacon device W (as in the example shown in FIG.11).

The invention claimed is:
 1. A method for detection of an emitter deviceequipped with a light by a receiver device equipped with a camera,comprising: the emitter device emits a light-modulated signal; thereceiver device captures a series of frames with said camera; themodulated signal is detected from said frames; the pixel position of theemitter device on a said frame is detected, in which: at least one saidemitter device is equipped with a camera and with a light and act as acombined emitter-receiver device; at least one said receiver mobiledevice is equipped with a light and emits a second light-modulatedidentification signal to advertise its identity or state and act asanother combined emitter-receiver device.
 2. The method of claim 1,wherein a plurality of emitter devices emit a plurality of signals witha different light modulation in order to advertise their identity orslate, wherein said receiver device determines the identity or state ofemitter devices from said modulation.
 3. The method of claim 2, whereina plurality of emitter devices emit at the same time, and wherein thereceiver device detect a plurality of light modulated signals in oneframe or in a plurality of successive frames, distinguishes themodulated signals from their modulation, and assign each detectedmodulated signal to an emitter device.
 4. The method of claim 1, furthercomprising: defining a region of interest on said frame; searching saidmodulated signal in said region of interest only.
 5. The method of claim1, wherein the modulated signal is detected by the receiver device bycyclically performing a signal recognition algorithm on pixels of saidseries of frames and continuously updating the pixel position of thedetected device.
 6. A method for detection of an emitter device equippedwith a light by a receiver device equipped with a camera, comprising:the emitter device emits a light-modulated signal; the receiver devicecaptures a series of frames with said camera; the modulated signal isdetected from said frames; the pixel position of the emitter device on asaid frame is detected wherein the modulated signal is detected with atransform on at least some pixels of the last N frames.
 7. The method ofclaim 6, wherein said transform is a Discrete Fourier Transform on pixelintensity for the last N frames, on all pixels of a region of interest.8. The method of claim 1, wherein the phase of the modulated signal isset relatively to a time base shared between the emitting and receivingdevices, and wherein the modulated signal is detected through aphase-sensitive detection or correlation with the signal searched, on atleast some pixels of the last N frames.
 9. The method of claim 5,comprising: identifying the pixel with maximum absolute value of theDiscrete Fourier Transform on pixel intensity for the last N frames(N>=1) in a region of interest; determining if said value is above apredefined threshold.
 10. The method of claim 2, wherein thelight-modulated signal is a square signal in which the light isperiodically set on and off, wherein the identity or state of eachemitter device is paired with a device specific frequency, with a devicespecific phase modulation or with a device specific frequencymodulation.
 11. The method of claim 1, comprising a preliminary step ofpairing different light-modulated identification signals respectivelywith a plurality of different emitter devices, and communicating thesignal paired with each emitter device to said receiver devices.
 12. Themethod of claim 1, comprising a step of pairing one commonlight-modulated identification signals with a plurality of differentemitter devices.
 13. The method of claim 2, used in an augmented realityapplication software or game, wherein an augmented reality element isdisplayed at the position of the identified emitter device in a videostream of the scene.
 14. The method of claim 1, wherein at least oneemitter device is an emitter mobile device, and wherein the positionand/or distance of this emitter mobile device is determined based onsaid pixel position.
 15. The method of claim 1, wherein the position ofthe receiver device is determined based on the pixel position of atleast one emitter device.
 16. The method of claim 2, wherein theidentification of the emitter device by the receiver device or by aserver or cloud is communicated to the emitter device over a wirelessinterface.
 17. A device comprising: a light; a camera; a display; aprocessor; a memory storing a computer module arranged for controllingsaid light in order to emit a light-modulated identification signal toadvertise the identity or state of said device, and for detectingblinking pixels corresponding to other devices in images captured withsaid camera using a method for detection of an emitter device equippedwith a light by a receiver device equipped with a camera, comprising:the emitter device emits a light-modulated signal; the receiver devicecaptures a series of frames with said camera; the modulated signal isdetected from said frames; the pixel position of the emitter device on asaid frame is detected, in which: at least one said emitter device isequipped with a camera and with a light and act as a combinedemitter-receiver device; at least one said receiver mobile device isequipped with a light and emits a second light-modulated identificationsignal to advertise its identity or state and act as another combinedemitter-receiver device or wherein the modulated signal is detected witha transform on at least some pixels of the last N frames.
 18. The deviceof claim 17, said light being an infrared light, said camera being aninfrared camera.
 19. The device of claim 17, being one among: asmartphone; smartglasses; a drone an equipment for a car.
 20. A computerprogram product comprising a non-transitory computer readable medium,the non-transitory computer readable medium having computer-executableinstructions for causing a processor of a mobile device to perform themethod of claim 1 or claim 8.